#!/bin/bash
#
# Copyright 2015-2017 Adrian DC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
#     http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#

# === GitHub Username ===
function githubusername()
{
  # Usage: githubusername (GitHub username getter)

  # GitHub Credentials
  export GitEMail='user.name@gmail.com';
  export GitFullName='Full Name';
  export GitUserName='Username';

  # Create .bash_android.github.rc with the exports to override the credentials
  if [ -f "${ANDROID_DEVELOPMENT_SHELL_TOOLS_WORKSPACE:-${HOME}}/.bash_android.github.rc" ]; then
    source "${ANDROID_DEVELOPMENT_SHELL_TOOLS_WORKSPACE:-${HOME}}/.bash_android.github.rc";
  fi;

  # Return username
  echo "${GitUserName}";
}

# === Git Config Helpers ===
alias gitrerere='git config --global rerere.enabled';
alias gitdiffpermhide='git config core.filemode false';
alias gitdiffpermshow='git config core.filemode true';
alias gpglist='gpg --list-secret-keys --keyid-format LONG';
alias gpgsilent='echo "no-tty" >> ~/.gnupg/gpg.conf';
alias gpgenable='git config --global commit.gpgsign true';
alias gpgdisable='git config --global commit.gpgsign false';
alias gpgsigning='git config --global user.signingkey';
alias gitshowsg='git config --global alias.logs "log --show-signature"';
alias gitpwstore='git config --global credential.helper store';
alias githi='git update-index --assume-unchanged';
alias gitsh='git update-index --no-assume-unchanged';

# === Git GPG Parameter ===
function gitgpgparam()
{
  # Usage: gitgpgparam (Returns the GPG signature flag if enabled)

  # Returns the GPG signature flag if enabled
  if [ "$(git config --global --get commit.gpgsign)" = 'true' ]; then
    echo '-S';
  fi;
}
